package com.bytecodezz.app.base.extend.function

import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.catch
import kotlinx.coroutines.flow.collect

/**
 * @author: bytecodezz
 * @version: 1.0
 * @time: 2021/8/18 15:40
 * @package: com.bytecodezz.app.base.extend.function
 *
 * @description:
 *
 */

//默认添加异常捕获，不让程序出现异常退出，如果在流中需要自己处理异常，则在next方法之前进行一次catch即可
suspend fun <T> Flow<T>.next(block: suspend T.() -> Unit): Unit = catch { }.collect { block(it) }
